package day16;

import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class TcpServer {
    public static void main(String[] args) throws Exception {
        // 创建服务器对象 指定程序端口
        ServerSocket server = new ServerSocket(8888);
        System.out.println("服务器：" + server);
        // 等待客户端连接 - 程序阻塞
        Socket client = server.accept();
        System.out.println("客户端连接成功：" + client);
        // 创建IO流对象
        InputStream is = client.getInputStream();
        OutputStream os = client.getOutputStream();
        // 服务器端接收客户端发送的内容
        byte[] b = new byte[1024];
        int length = is.read(b);
        if (length != -1) {
            // 输出读到的内容 - 解析数组
            System.out.println(new String(b, 0, length));
        }
        // 服务器端收到客户端的数据之后给客户端发送消息
        // "hello,client,我是Server"
        String msg = "hello,client,我是Server";
        os.write(msg.getBytes());
        // 关闭资源
        is.close();
        os.close();
        client.close();
        server.close();
    }
}